Conversation
LLVM 23 removed GEN_PASS_CLASSES backward compatibility from the TableGen pass generator (it now emits #error). This commit migrates all mlir-aie pass definitions to use the new GEN_PASS_DEF_<PASSNAME> per-pass macros. Changes: - Remove GEN_PASS_CLASSES from 5 headers (AIEPasses.h, AIEXPasses.h, AIEVec Analysis/Transforms Passes.h, PassDetail.h) - Add GEN_PASS_DEF_<PASSNAME> defines and .h.inc includes in each .cpp file that defines a pass - Qualify generated base classes with their full namespace (e.g., xilinx::AIE::impl::AIEAssignLockIDsBase) - Use impl:: namespace for base class references in headers where the base class is used directly (AIEPasses.h) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
There was a problem hiding this comment.
Remaining comments which cannot be posted as a review comment to avoid GitHub Rate Limit
clang-format
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
LLVM 23 removed the PYTHON_BINDINGS_LIBRARY parameter from declare_mlir_python_extension (nanobind is now the only option). The unrecognized parameter was being passed through as literal library names (-lPYTHON_BINDINGS_LIBRARY -lnanobind), causing linker failures. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
There was a problem hiding this comment.
Remaining comments which cannot be posted as a review comment to avoid GitHub Rate Limit
clang-format
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
[clang-format] reported by reviewdog 🐶
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The eudsl-python-extras package uses np.bool which was removed in numpy 1.24. Since the CI installs numpy 1.26.4 (per the <2.0 constraint), all Python tests crash with AttributeError. Add a post-vendoring patch step in vendor_eudsl.py that replaces np.bool with np.bool_ in the vendored util.py. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The _is_index_type function was removed from mlir.dialects.linalg.opdsl.lang.emitter in LLVM 23. Replace the import with an inline IndexType.isinstance() check, which is what _is_index_type did. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
LLVM 23's nanobind-based Python bindings removed the static isinstance() classmethod from type classes. Use Python's builtin isinstance() instead. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The SCF IfOp Python binding renamed the hasElse parameter to has_else in LLVM 23. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
Cc: @hunhoffe |
The merge with main brought in new trace infrastructure files (AIETraceToConfig.cpp, AIEInlineTraceConfig.cpp) that still used the old GEN_PASS_CLASSES pattern which LLVM 23 removed. Apply the same per-pass GEN_PASS_DEF_ migration used by all other passes on this branch. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Updates LLVM version based on
triton-sharedortorch-mlir.Reason: Manual update via --llvm-hash
Triggered by: workflow_dispatch